在安卓上部署服务器 – 应用程序的配置

这里介绍Linux Deploy、JuiceSSH、BusyBox、XShell(PC端)基础配置和使用

本系列其他文章:

1.在安卓上部署服务器
2.在安卓上部署服务器 – 应用程序的配置
3.在安卓上部署服务器 – 解决内网穿透问题
4.在安卓上部署服务器 – 部署脚本和博客

  原作者是介绍提到的四个app(BusyBox、ES文件浏览器、Linux Deploy、JuiceSSH(Android)/XShell(PC))的配置和使用。
  我用到的是(BusyBox、Turbo客户端、Linux Deploy、JuiceSSH(Android)/XShell 5(PC))。

  原作者的手机的基础配置1G RAM+8G ROM(我自己的),最低配置:512M RAM + 4.xG ROM
  而我的手机是魅蓝note2电信版,2G RAM+16G ROM 感觉已经够用了
1.在使用Linux Depoly之前,需要获取手机root权限。并且注意安装顺序BusyBox/ES文件浏览器->Linux Deploy->JuiceSSH。将Linux Deploy的后台配置设置为无限制,许多系统优化会有类似MIUI的神隐模式。
  (当然我的安装顺序是BusyBox -> Linux Deploy -> JuiceSSH/Turbo客户端),魅族手机自带的root都不能完全root,最好自己再下载kingroot或者其他root软件再root一次。
2.BusyBox:安装完打开,BusyBox会自动进行初始化,初始化完成再安装Linux Deploy比较好。
3.Linux Deploy是一款可以在Android设备上部署Linux环境的应用,,其原理大概是在Android的Linux层跑一个chroot或者proot容器,然后再在容器中运行我们准备好的另外一个Linux系统。值得注意的是,这与我们熟知的虚拟机技术不同,新的Linux系统将和Android系统平行运行(非专业解释不要深究)。
  3.1打开Linux Deploy,我们需要在侧边栏 – Setting – Language中切换语言为”中文”。切换完成后,一直按返回键退出应用再重新进入应用,这时应用的显示语言已经被我们更改为中文了。
  3.2接下来,我们将使用Linux Deploy在Android设备上部署Ubuntu系统:
  点击界面最右下方的”属性”按钮进入配置文件的设置界面进行如下设置(我也不知道开发者为什么会用这么一个”下载”图标作为配置文件设置界面的图标):

=>Containerization method:”chroot”

=>发行版:”Ubuntu”

=>架构:保持默认值

=>发行版版本:”yakkety”(即Ubuntu 16.10)

=>源地址:http://mirror.tuna.tsinghua.edu.cn/ubuntu-ports/ (因为默认源速度不佳,为了不下载一天一夜,我们这里使用的是清华大学的开源镜像源)

=>安装类型:这一选项的话有两种建议,”目录”和”文件”,如果对Linux不太熟悉并且/data分区剩余空间≥2g的话,建议使用”目录”的安装方式,如果对Linux比较熟悉或者/data分区剩余空间<2g的话,建议使用”文件”的安装方式。在这里,使用”目录”的安装方式。

=>安装路径:”安装路径”选择”目录”时,这个选项将定义系统安装在哪个路径中,默认路径为${ENV_DIR}/rootfs/linux,即安装在/data/user/0/ru.meefik.linuxdeploy/env/rootfs/linux目录下。”安装类型”选择”文件”时,这个选项将定义系统安装在哪个镜像文件中,默认值为”外置存储/linux.img。

=>镜像大小(MB)(安装类型”选择”文件”时可用):这个选项将定义系统所在镜像文件的大小。系统安装之前将在安装目录创建一个大小为设置的镜像大小的空文件用来存放系统文件和数据(相当于新Linux系统的总磁盘空间)。建议不要用默认值,填写2048m足够了。

=>文件系统(安装类型”选择”文件”时可用):选择”自动”就好。

=>用户名:这个选项为登录系统时的用户名,默认为”android”,可以随意更改。

=>用户密码:这个选项为Ubuntu系统中用户的密码,可以根据自己的习惯填写。

=>Privileged Users:保持默认值”root”

=>DNS服务器:可以保持默认值,也可自定义填写DNS服务器地址(如114.114.114.114等)

=>本地化:建议保持默认值POSIX,如果有其他需求,比如ssh返回结果中文化/VNC中文化时,选择”zh_CN.UTF8”

=>INIT/MOUNTS项:若有需求时可以设置,无需求可以忽略。

=>允许SSH服务器启动:打开此选项

=>SSH设置:保持默认

=>允许图形界面启动:若有需求可以设置,这里暂时不打开这个选项
  (以上都是原作者的配置,下面是我的配置方式)
1
2
3
4
  因为我安装的linux deploy没有作者的yakkety,所以安装了kali linux系统,安装什么系统都不要紧,主要是能把手机当电脑使
  然后源地址因为原来的下了两次都失败了,所以用了别人在网上分享的源地址,亲测可用,下载很快 http://202.141.160.110/kali/
  安装类型为目录的,图形界面可要可不要,手机这么小的屏幕觉得用起桌面来也不方便,所以也就懒得勾选
  然后就可以安装了
  3.3设置完成后,按返回键返回到应用主界面,按下菜单键,选择”安装”开始Linux系统的安装,安装过程中需要一直保持网络连接(建议在WIFI下安装,大概需要几百兆流量)。
  当看到终端输出”>>>deploy”时,代表安装已开始
  开始和完成中间约二十分钟,使用默认源三十分钟以上。
  当看到终端输出”<<<deploy”时,代表安装已完成。
要是你看到安装过程中有”warning”、”couldn’t found”什么的,估计要重新安装了,希望大家能下一次就成功。
点击主界面下方的”启动”按钮可以启动新安装的系统,点击”停止”可以停止系统。
要是看到”Starting extra/ssh … done”,至此,系统部署部分描述完毕。

  1. JuiceSSH配置和使用。部署完毕后,我们需要用到JuiceSSH之类的SSH工具来登录系统(这里以JuiceSSH为例)。

点击连接->认证,新建一个认证:

=>昵称:随便填写,用于标识认证,这里填写“用于标识认证”

=>用户名:填写Linux Deploy上你填写过的用户名,因为我没改过,所以填android

=>密码:填写Linux Deploy上你填写过的密码,这里是password

点击右上角√

JuiceSSH

进入新建连接界面:

=>昵称:可随意填写,用以标识SSH链接,这里填写“用于标识连接”

=>类型:SSH

=>地址:填写Linux Deploy应用标题栏中那个,这里是127.0.0.1

点击右上角√

JuiceSSH1

在”连接列表”中点击刚刚新建的这个项目连接到我们刚刚部署好的系统,连接成功后界面如下:

JuiceSSH2

因为我们是通过普通用户android登陆系统的,接下来我们需要设置超级用户(root)的密码并且以超级用户的身份登陆系统,在终端中键入:sudo passwd root

终端将会提示用户输入root用户的密码并且再次输入一次以确认(输入密码时密码将不可见,连*都不会显示)。

设置完毕后,在终端键入命令su并输入刚刚设置好的root用户密码即可切换到root用户。

5.使用Xshell(PC端)登录:下载并安装Xshell后,文件->新建。

  =>名称、协议、主机、端口号都跟juicessh配置一样(主机那一栏填你linux上面显示的IP)

6.使用ES文件浏览器进行文件的管理:
=>如果你是通过”目录”方式部署的Linux系统,那么你可以直接使用ES访问/data/user/0/ru.meefik.linuxdeploy/env/rootfs/linux来管理新系统中的文件

=>如果你是通过”文件”方式部署的Linux系统,管理文件等操作就得依靠SFTP或者SSH了。SFTP具体配置见参考文章。

参考文章:Linux Deploy:在Android上部署Linux

  摘录自 ZKeeer’s Blog